<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<title>Kyoto Cabinet: kcthread.h File Reference</title>

<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="doxygen.css" rel="stylesheet" type="text/css" />



</head>
<body>
<div id="top"><!-- do not remove this div! -->


<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  
  
  <td style="padding-left: 0.5em;">
   <div id="projectname">Kyoto Cabinet
   
   </div>
   
  </td>
  
  
  
 </tr>
 </tbody>
</table>
</div>

<!-- Generated by Doxygen 1.7.6.1 -->
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
      <li><a href="annotated.html"><span>Classes</span></a></li>
      <li class="current"><a href="files.html"><span>Files</span></a></li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="files.html"><span>File&#160;List</span></a></li>
      <li><a href="globals.html"><span>File&#160;Members</span></a></li>
    </ul>
  </div>
</div>
<div class="header">
  <div class="summary">
<a href="#nested-classes">Classes</a> &#124;
<a href="#namespaces">Namespaces</a>  </div>
  <div class="headertitle">
<div class="title">kcthread.h File Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p>threading devices  
<a href="#details">More...</a></p>
<div class="textblock"><code>#include &lt;<a class="el" href="kccommon_8h.html">kccommon.h</a>&gt;</code><br/>
<code>#include &lt;<a class="el" href="kcutil_8h.html">kcutil.h</a>&gt;</code><br/>
</div><table class="memberdecls">
<tr><td colspan="2"><h2><a name="nested-classes"></a>
Classes</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkyotocabinet_1_1Thread.html">kyotocabinet::Thread</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Threading device.  <a href="classkyotocabinet_1_1Thread.html#details">More...</a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkyotocabinet_1_1Mutex.html">kyotocabinet::Mutex</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic mutual exclusion device.  <a href="classkyotocabinet_1_1Mutex.html#details">More...</a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkyotocabinet_1_1ScopedMutex.html">kyotocabinet::ScopedMutex</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Scoped mutex device.  <a href="classkyotocabinet_1_1ScopedMutex.html#details">More...</a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkyotocabinet_1_1SlottedMutex.html">kyotocabinet::SlottedMutex</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Slotted mutex device.  <a href="classkyotocabinet_1_1SlottedMutex.html#details">More...</a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkyotocabinet_1_1SpinLock.html">kyotocabinet::SpinLock</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Lightweight mutual exclusion device.  <a href="classkyotocabinet_1_1SpinLock.html#details">More...</a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkyotocabinet_1_1ScopedSpinLock.html">kyotocabinet::ScopedSpinLock</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Scoped spin lock device.  <a href="classkyotocabinet_1_1ScopedSpinLock.html#details">More...</a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkyotocabinet_1_1SlottedSpinLock.html">kyotocabinet::SlottedSpinLock</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Slotted spin lock devices.  <a href="classkyotocabinet_1_1SlottedSpinLock.html#details">More...</a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkyotocabinet_1_1RWLock.html">kyotocabinet::RWLock</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Reader-writer locking device.  <a href="classkyotocabinet_1_1RWLock.html#details">More...</a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkyotocabinet_1_1ScopedRWLock.html">kyotocabinet::ScopedRWLock</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Scoped reader-writer locking device.  <a href="classkyotocabinet_1_1ScopedRWLock.html#details">More...</a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkyotocabinet_1_1SlottedRWLock.html">kyotocabinet::SlottedRWLock</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Slotted reader-writer lock devices.  <a href="classkyotocabinet_1_1SlottedRWLock.html#details">More...</a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkyotocabinet_1_1SpinRWLock.html">kyotocabinet::SpinRWLock</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Lightweight reader-writer locking device.  <a href="classkyotocabinet_1_1SpinRWLock.html#details">More...</a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkyotocabinet_1_1ScopedSpinRWLock.html">kyotocabinet::ScopedSpinRWLock</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Scoped reader-writer locking device.  <a href="classkyotocabinet_1_1ScopedSpinRWLock.html#details">More...</a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkyotocabinet_1_1SlottedSpinRWLock.html">kyotocabinet::SlottedSpinRWLock</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Slotted lightweight reader-writer lock devices.  <a href="classkyotocabinet_1_1SlottedSpinRWLock.html#details">More...</a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkyotocabinet_1_1CondVar.html">kyotocabinet::CondVar</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Condition variable.  <a href="classkyotocabinet_1_1CondVar.html#details">More...</a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkyotocabinet_1_1CondMap.html">kyotocabinet::CondMap</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Assosiative condition variable.  <a href="classkyotocabinet_1_1CondMap.html#details">More...</a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><b>kyotocabinet::CondMap::Count</b></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Counter for waiting threads. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><b>kyotocabinet::CondMap::Slot</b></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Slot of a key space. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkyotocabinet_1_1TSDKey.html">kyotocabinet::TSDKey</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Key of thread specific data.  <a href="classkyotocabinet_1_1TSDKey.html#details">More...</a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkyotocabinet_1_1TSD.html">kyotocabinet::TSD&lt; TYPE &gt;</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Smart pointer to thread specific data.  <a href="classkyotocabinet_1_1TSD.html#details">More...</a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkyotocabinet_1_1AtomicInt64.html">kyotocabinet::AtomicInt64</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Integer with atomic operations.  <a href="classkyotocabinet_1_1AtomicInt64.html#details">More...</a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkyotocabinet_1_1TaskQueue.html">kyotocabinet::TaskQueue</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classkyotocabinet_1_1TaskQueue_1_1Task.html" title="Interface of a task.">Task</a> queue device.  <a href="classkyotocabinet_1_1TaskQueue.html#details">More...</a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkyotocabinet_1_1TaskQueue_1_1Task.html">kyotocabinet::TaskQueue::Task</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface of a task.  <a href="classkyotocabinet_1_1TaskQueue_1_1Task.html#details">More...</a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><b>kyotocabinet::TaskQueue::WorkerThread</b></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Implementation of the worker thread. <br/></td></tr>
<tr><td colspan="2"><h2><a name="namespaces"></a>
Namespaces</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacekyotocabinet.html">kyotocabinet</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight"><p>All symbols of Kyoto Cabinet. </p>
<br/></td></tr>
</table>
<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
<div class="textblock"><p>threading devices </p>
</div></div><!-- contents -->


<hr class="footer"/><address class="footer"><small>
Generated on Fri May 25 2012 01:21:35 for Kyoto Cabinet by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.7.6.1
</small></address>

</body>
</html>
